Design Patterns and Change Proneness: An Examination of Five Evolving Systems
نویسندگان
چکیده
Design patterns are recognized, named solutions to common design problems. The use of the most commonly referenced design patterns should promote adaptable and reusable program code. When a system evolves, changes to code involving a design pattern should, in theory, consist of creating new concrete classes that are extensions or subclasses of previously existing classes. Changes should not, in theory, involve direct modifications to the classes in prior versions that play roles in a design patterns. We studied five systems, three proprietary systems and two open source systems, to identify the observable effects of the use of design patterns in early versions on changes that occur as the systems evolve. In four of the five systems, pattern classes are more rather than less change prone. Pattern classes in one of the systems were less change prone. These results held up after normalizing for the effect of class size — larger classes are more change prone in two of the five systems. These results provide insight into how design patterns are actually used, and should help us to learn to develop software designs that are more easily adapted.
منابع مشابه
Potentials of Evolving Linear Models in Tracking Control Design for Nonlinear Variable Structure Systems
Evolving models have found applications in many real world systems. In this paper, potentials of the Evolving Linear Models (ELMs) in tracking control design for nonlinear variable structure systems are introduced. At first, an ELM is introduced as a dynamic single input, single output (SISO) linear model whose parameters as well as dynamic orders of input and output signals can change through ...
متن کاملDesign Pattern Coupling, Change Proneness, and Change Coupling: A Pilot Study
A design pattern realization consists of a cluster of classes that work together to solve a particular problem using a well known, named solution. Developers may build systems out of several pattern realizations, and these pattern realizations may be interconnected, or, in other words, coupled. Coupled pattern realizations may represent a reasonable solution to software design problems, however...
متن کاملAnalysing Artefacts Dependencies to Evolving Software Systems
Program maintenance accounts for the largest part of the costs of any program. During maintenance activities, developers implement changes (sometimes simultaneously) on artefacts to fix bugs and to implement new requirements. Thus, developers need knowledge to identify hidden dependencies among programs artefacts and detect correlated artefacts. As programs evolved, their designs become more co...
متن کاملThe Associations of Alexithymia and Emotion Dysreglation with Proneness to Substance Dependence in University Students
The present study aimed to determine the associations of alexithymia and emotion dysregulation with proneness to substance dependence in university students. This study was a correlational-descriptive design. The sample of this study consisted of 361 university students of Semnan Azad University in the academic year of 1396 selected by convenience sampling method based on Krejcie and Morgan tab...
متن کاملIs the Role of Physicians Really Evolving Due to Non-physician Clinicians Predominance in Staff Makeup in Sub-Saharan African Health Systems?; Comment on “Non-physician Clinicians in Sub-Saharan Africa and the Evolving Role of Physicians”
Health workforce shortages in Sub-Saharan Africa are widely recognized, particularly of physicians, leading the training and deployment of Non-physician clinicians (NPCs). The paper by Eyal et al provides interesting and legitimate viewpoints on evolving role of physicians in context of decisive increase of NPCss in Sub-Saharan Africa. Certainly, in short or mid-term, NPCs will continue to be a...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003